<?php

namespace SummoIngenio\Sai\MatematicaBundle\Utility\Juego\P0;

use Doctrine\ORM\EntityManager;
use SummoIngenio\Sai\MatematicaBundle\Utility\Juego\JuegoBase;

/**
 * 
 * @author SVM
 */
class P01022 extends JuegoBase {
  private $superiores;
  private $inferiores;
  
  function init() {
	$sup = rand(10,20);
	$inf = rand(10,20);
	$listasup = array(rand(10,20),rand(10,20),rand(10,20));
	$listainf = array(rand(10,20),rand(10,20),rand(10,20));
	
	$this->superiores = $listasup;
	$this->inferiores = $listainf;
	
  }

  public function getHtmlJugable() {
    return $this->render('P0/P01022/jugable', array(
      'superiores'=>$this->superiores,
	  'inferiores'=>$this->inferiores,
	  'opciones'=>$this->opciones,	  
    ));
  }
  
  public function getHtmlResuelto() {
    return $this->render('P0/P01022/resuelto', array(
      'superiores'=>$this->superiores,
	  'inferiores'=>$this->inferiores,
	  'opciones'=>$this->opciones,	 	  
    ));
  }
  
  public function getHtmlDesactivado() {
    return $this->render('P0/P01022/desactivado', array(
      'superiores'=>$this->superiores,
	  'inferiores'=>$this->inferiores,
	  'opciones'=>$this->opciones,	  	  
    ));
  }

  public function getPregunta() {
      return '';
  }

  public function getCss() {
    $aRetornar = array(
      "tipo"      => "archivo",
      "contenido" => "P0/P01022.css"
    );
    return $aRetornar;
  }
  
  public function getJavascript() {
    $aRetornar = array(
      "tipo"      => "archivo",
      "contenido" => "P0/P01022.js"
    );
    return $aRetornar;
  }
  
  public function verificarRespuesta($respuestaUsuario) {
	
    $cadena = sprintf("%s - %s = %s",$this->superiores[0],$this->inferiores[0],$respuestaUsuario->get('valor1'));
	$rst = true;
	if(abs($respuestaUsuario->get('valor1')) != abs($this->superiores[0]-$this->inferiores[0])){
		$rst = false;
	}
	if(abs($respuestaUsuario->get('valor2')) != abs($this->superiores[1]-$this->inferiores[1])){
		$rst = false;
	}	
	if(abs($respuestaUsuario->get('valor3')) != abs($this->superiores[2]-$this->inferiores[2])){
		$rst = false;
	}	

    $aRetornar = array(
      'respuesta' => $cadena,
      'correcta'  =>  $rst,
    );
    
    return $aRetornar;
  }
  
  public function __sleep() {
    return array(
      'superiores',
      'inferiores',	  
	  'opciones',
    );
  }
}
